<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:a4j="http://richfaces.org/a4j"
      xmlns:rich="http://richfaces.org/rich"
      xmlns:f="http://java.sun.com/jsf/core">

    <f:metadata>
        <f:viewParam name="idProd" value="#{tabulacoes.idProd}" />
        <f:viewParam name="ano" value="#{tabulacoes.ano}" />
        <f:viewParam name="mes" value="#{tabulacoes.mes}" />
    </f:metadata>
    
    <body>

        <!--
             Tudo o que está fora do ui:composition é ignorado. Só mantemos esse código que é ignorado
             para termos mais facilidades da IDE
        -->

            <ui:composition template="./templates/templateAreaRestrita.xhtml">

                <ui:define name="content">

                    <div id="content-tabulacoes">

                        <rich:panel header="#{tabulacoes.tabulacoes}">

                            <a4j:status onstart="#{rich:component('painelStatus')}.show()" onstop="#{rich:component('painelStatus')}.hide()" />
                            
                            <h:form id="form">
                                <h:link value="Voltar para Pesquisar Tabulações" outcome="pesqTabulacao?faces-redirect=true" />
                                <br /><br />
                                <h:outputText value="Foram encontrados #{tabulacoes.qtdeResultados} resultados."
                                              styleClass="texto" />
                                <br />


                                <h:dataTable id="tabulacoes" value="#{tabulacoes.resultados}" var="tabulacao"
                                             headerClass="tbl-padrao-header"
                                             rowClasses="tbl-padrao-row"
                                             cellspacing="15" rendered="#{tabulacoes.exibirResultados}">
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Data da coleta" />
                                        </f:facet>
                                        #{tabulacao.datac_tabu}
                                    </h:column>

                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Produto" />
                                        </f:facet>
                                        #{tabulacao.nome_prod}
                                    </h:column>

                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Entreposto" />
                                        </f:facet>
                                        #{tabulacao.nome_entr}
                                    </h:column>

                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Ações" />
                                        </f:facet>
                                        <h:link value="Visualizar"
                                                outcome="visualizarTabulacao?idTabulacao=#{tabulacao.id_tabu}&amp;faces-redirect=true" />
                                        <h:outputText value=" | " />
                                        <a4j:commandLink execute="@this" render="@none" oncomplete="#{rich:component('painelConfirmacao')}.show()">
                                            Excluir
                                            <a4j:param value="#{tabulacao.id_tabu}" assignTo="#{tabulacoes.tabulacaoAtual}" />
                                        </a4j:commandLink>
                                    </h:column>
                                </h:dataTable>
                                
                                <!-- TODO
                                     Solução para o futuro: atualização APENAS da tabela com as tabulações
                                     Solução atual: refresh com Javascript
                                -->
                                <a4j:jsFunction name="excluir" action="#{tabulacoes.excluirTabulacao()}" render="tabulacoes" execute="@this"
                                                oncomplete="#{rich:component('painelConfirmacao')}.hide(); javascript:location.reload(true);" />
                                
                                <rich:popupPanel id="painelStatus" autosized="true">
                                    Por favor, aguarde...
                                </rich:popupPanel>
                                
                                <rich:popupPanel id="painelConfirmacao" autosized="true">
                                    Você tem certeza de que deseja excluir essa tabulação?
                                    <a4j:commandButton value="Cancelar" onclick="#{rich:component('painelConfirmacao')}.hide(); return false;" />
                                    <a4j:commandButton value="Excluir" onclick="excluir(); return false;" />
                                </rich:popupPanel>
                                
                            </h:form>

                        </rich:panel>
                        
                    </div>

                </ui:define>

            </ui:composition>

    </body>

</html>

